const Controller = require('../controllers/controllers.js').controller;
Page({

  /**
   * 页面的初始数据
   */
  data: {
    userInfo:"",
    isShow:false,
    showData:{
      name:'',
      msg:'',
      value:''
    },
    jobData:[
        '白领/一般职业',
        '公务员/事业单位',
        '工业/服务业人员',
        '自由职业/个体户/私营业主',
        '无业/失业/下岗',
        '退休',
        '学生',
        '公务员/事业单位',
    ],
    revenueData:[
        '5万及以下',
        '5万至10万',
        '10万至15万',
        '15万至30万',
        '30万至100万',
        '100万以上',
    ],
    eduData:[
        '博士',
        '硕士',
        '本科',
        '专科',
        '中学',
        '小学',
        '其他'
    ]
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
        this.getUser()
  },
  getUser(){
    
    Controller.info({}).then((res)=>{
        var mo=this.replaceStr(res.data.baseData.mobile,3,'*');
        mo=this.replaceStr(mo,4,'*');
        mo=this.replaceStr(mo,5,'*');
        mo=this.replaceStr(mo,6,'*');

        var idCardNumber=this.replaceStr(res.data.baseData.idCardNumber,6,'*');
        idCardNumber=this.replaceStr(idCardNumber,7,'*');
        idCardNumber=this.replaceStr(idCardNumber,8,'*');
        idCardNumber=this.replaceStr(idCardNumber,9,'*');
        idCardNumber=this.replaceStr(idCardNumber,10,'*');
        idCardNumber=this.replaceStr(idCardNumber,11,'*');
        idCardNumber=this.replaceStr(idCardNumber,12,'*');
        idCardNumber=this.replaceStr(idCardNumber,13,'*');


        this.setData({
          userInfo:res.data.baseData,
          mobile:mo,
          idCardNumber:idCardNumber
        })
    })
  },
  replaceStr(str, index, char){
    const strAry = str.split('');
    strAry[index] = char;
    return strAry.join('');
  },
  onChange(e) {
    if(e.currentTarget.dataset.name == "idCardNumber"){

      let _IDRe18 = /^([1-6][1-9]|50)\d{4}(18|19|20)\d{2}((0[1-9])|10|11|12)(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/
      let _IDre15 =  /^([1-6][1-9]|50)\d{4}\d{2}((0[1-9])|10|11|12)(([0-2][1-9])|10|20|30|31)\d{3}$/
      // 校验身份证：
      if( _IDRe18.test( e.detail.value ) || _IDre15.test( e.detail.value )  ) {
        console.log(' 验证通过 ')
      } else {
        wx.showToast({
          title: '身份证不正确!',
          icon: 'errors',
          duration: 2000
        })
        return;
      }

    }
    

    var obj=this.data.userInfo;
    console.log(e)
    if(e.currentTarget.dataset.name == "edu"||e.currentTarget.dataset.name == "revenue"||e.currentTarget.dataset.name == "job"){
        obj[e.currentTarget.dataset.name]=this.data[e.currentTarget.dataset.name+'Data'][e.detail.value];
    }else if(e.currentTarget.dataset.name == "sex"){
      obj[e.currentTarget.dataset.name]=Number(e.detail.value) +1;
    }else{
        obj[e.currentTarget.dataset.name]=e.detail.value;
    }

    

    this.setData({
      userInfo: obj
    })
    this.updateInfo();
  },
  updateInfo(){
    var address=this.data.userInfo.address;
    var str='';
    for(var i=0;i<address.length;i++){
      str=str+=address[i]
    }
    var obj={
      'name':this.data.userInfo.name || '',
      'address':str || '',
      'remark':this.data.userInfo.remark || '',
      'job':this.data.userInfo.job || '',
      'idCardNumber':this.data.userInfo.idCardNumber || '',
      'sex':Number(this.data.userInfo.sex) || '',
      'revenue':this.data.userInfo.revenue || '',
      'edu':this.data.userInfo.edu || '',
    };
    // console.log(obj)
    Controller.updateInfo(obj).then((res)=>{
        // console.log(res)
        this.setData({
          isShow:false
        })
        this.getUser()
    })
  },
  onClick(e){
      var obj=this.data.userInfo;
      
      var o={
        name:e.currentTarget.dataset.name,
        value:obj[e.currentTarget.dataset.name]
      }
      
      if(o.name =='name'){
        o.msg='姓名'
      }else if(o.name =='idCardNumber'){
        o.msg='身份证（护照）'
      }else if(o.name =='address'){
        o.msg='常住地'
      }else if(o.name =='job'){
        o.msg='职业'
      }else if(o.name =='revenue'){
        o.msg='收入'
      }else if(o.name =='edu'){
        o.msg='学历'
      }


      this.setData({
        isShow:true,
        showData:o
      })
  },
  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})